home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
IDLIncludes
/
AppleEvents.idl
< prev
next >
Wrap
Text File
|
1996-05-01
|
7KB
|
238 lines
/*
File: AppleEvents.idl
Contains: AppleEvent Package Interfaces.
Version: Technology: System 7.5
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
*/
#ifndef __APPLEEVENTS_IDL__
#define __APPLEEVENTS_IDL__
#include <somobj.idl>
#include <somcls.idl>
#ifndef __TYPES_IDL__
#include <Types.idl>
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#if !FOR_PTR_BASED_AE
#ifndef __MEMORY_IDL__
#include <Memory.idl>
#endif
#ifndef __MIXEDMODE_IDL__
#include <MixedMode.idl>
#endif
#ifndef __NOTIFICATION_IDL__
#include <Notification.idl>
#endif
#ifndef __EVENTS_IDL__
#include <Events.idl>
#endif
#endif
#endif
#if FOR_SYSTEM8_PREEMPTIVE
#ifndef __KERNEL_IDL__
#include <Kernel.idl>
#endif
#endif
#ifndef __AEDATAMODEL_IDL__
#include <AEDataModel.idl>
#endif
#ifdef __SOMIDL__
/* Event Class */
/* Event ID's */
/* Constants for recording */
#if FOR_SYSTEM8_PREEMPTIVE
#if FOR_PTR_BASED_AE
typedef OpaquePtr AEDispatcherID;
typedef OpaquePtr AEDispatcherRef;
typedef OpaquePtr AEHandlerTableRef;
typedef OpaquePtr AEDelayedSendRef;
/* this will be removed by D11E3 or earlier (!!!)*/
typedef AEHandlerTableRef AEHandlerTable;
typedef OptionBits AEReceiveMode;
#endif
#endif
/* parameter to AESend */
typedef OptionBits AESendOptions;
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#if !FOR_PTR_BASED_AE
typedef SInt32 AESendMode;
#endif
#endif
/* Constants for timeout durations */
/* priority param of AESend */
typedef SInt16 AESendPriority;
typedef SInt8 AEEventSource;
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#if !FOR_PTR_BASED_AE
typedef OpaquePtr AEEventHandlerProcPtr;
typedef OpaquePtr AEEventHandlerUPP;
typedef OpaquePtr AEIdleProcPtr;
typedef OpaquePtr AEIdleUPP;
typedef OpaquePtr AEFilterProcPtr;
typedef OpaquePtr AEFilterUPP;
#endif
#endif
#if FOR_SYSTEM8_PREEMPTIVE
#if FOR_PTR_BASED_AE
typedef OpaquePtr AEEventHandlerProc;
#endif
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#if !FOR_PTR_BASED_AE
/*
*************************************************************************
The next couple of calls are basic routines used to create, send,
and process AppleEvents.
*************************************************************************
*/
#endif
#endif
#if FOR_SYSTEM8_PREEMPTIVE
#if FOR_PTR_BASED_AE
/*
*************************************************************************
The next set of calls are basic routines used to send and process AppleEvents.
*************************************************************************
*/
/*
the reply param MUST be created by the caller if a reply is requested
otherwise, the caller must specify nil, or a NULL AppleEvent, if no reply is requested
*/
/*
the reply param MUST be created by the caller if a reply is requested
otherwise, the caller must specify nil, or a NULL AppleEvent, if no reply is requested
*/
/*
*************************************************************************
The next couple of calls are for causing kernel asynchronous completion
notifications to send an AppleEvent when they fire.
*************************************************************************
*/
#endif
#endif
/*
Note: during event processing, an event handler may realize that it is likely
to exceed the client's timeout limit. Passing the reply to this
routine causes a wait event to be generated that asks the client
for more time.
*/
#if FOR_SYSTEM7_AND_SYSTEM8_PREEMPTIVE
#endif
/*
*************************************************************************
The following three calls are used to allow applications to behave
courteously when a user interaction such as a dialog box is needed.
*************************************************************************
*/
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
typedef SInt8 AEInteractAllowed;
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#if !FOR_PTR_BASED_AE
#endif
#endif
#if FOR_SYSTEM8_PREEMPTIVE
#if FOR_PTR_BASED_AE
/*
*************************************************************************
These calls are used to create and dispose Apple event handler tables,
as well as to install, get and remove handlers from them.
*************************************************************************
*/
/*
*************************************************************************
These calls are used to setup and get events from Apple event dispatchers.
*************************************************************************
*/
#endif
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#if !FOR_PTR_BASED_AE
/*
*************************************************************************
These calls are used to set up and modify the event dispatch table.
*************************************************************************
*/
/*
*************************************************************************
The following four calls are available for applications which need more
sophisticated control over when and how events are processed. Applications
which implement multi-session servers or which implement their own
internal event queueing will probably be the major clients of these
routines. They can be called from within a handler to prevent the AEM from
disposing of the AppleEvent when the handler returns. They can be used to
asynchronously process the event (as MacApp does).
*************************************************************************
*/
/*
Note: The following routine tells the AppleEvent manager that processing
is either about to resume or has been completed on a previously suspended
event. The procPtr passed in as the dispatcher parameter will be called to
attempt to redispatch the event. Several constants for the dispatcher
parameter allow special behavior. They are:
- kAEUseStandardDispatch means redispatch as if the event was just
received, using the standard AppleEvent dispatch mechanism.
- kAENoDispatch means ignore the parameter.
Use this in the case where the event has been handled and no
redispatch is needed.
- non nil means call the routine which the dispatcher points to.
*/
/* Constants for Refcon in AEResumeTheCurrentEvent with kAEUseStandardDispatch */
/* Constants for AEResumeTheCurrentEvent */
#endif
#endif
/*
*************************************************************************
These calls are used to set up and modify special hooks into the
AppleEvent manager.
*************************************************************************
*/
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#if !FOR_PTR_BASED_AE
#endif
#endif
#if FOR_SYSTEM8_PREEMPTIVE
#if FOR_PTR_BASED_AE
#endif
#endif
/*
*************************************************************************
This call was added in version 1.0.1. If called with the keyword
keyAERecorderCount ('recr'), the number of recorders that are
currently active is returned in 'result'
(available only in vers 1.0.1 and greater).
*************************************************************************
*/
#if FOR_SYSTEM7_AND_SYSTEM8_PREEMPTIVE
#endif
#endif /* __SOMIDL__ */
#endif /* __APPLEEVENTS_IDL__ */